﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class FyysilineIsikOtsing : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IsikOtsing, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IFyysilineIsikOtsing {
        
        private System.Int64? @__suguKL;
        
        private string @__eesnimi;
        
        private System.DateTime? @__synniKP;
        
        private System.DateTime? @__surmaKP;
        
        private System.DateTime? @__synniKPVahemikuLoppKP;
        
        private string @__dokumendiNR;
        
        private string @__elukohtCSV;
        
        private string @__emaNimi;
        
        private string @__isaNimi;
        
        private string @__teisedNimed;
        
        private System.Int64? @__dokumendiTyypKL;
        
        private string @__dokumendiNimetus;
        
        private System.Int64? @__kodakondsusKL;
        
        private System.Collections.Generic.List<System.Int64?> @__mitmikKodakondsusKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.Boolean? @__karistatudIsik;
        
        private string @__ametikohaNimetus;
        
        public FyysilineIsikOtsing() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public FyysilineIsikOtsing(
                    System.Int64? @suguKL, 
                    string @eesnimi, 
                    System.DateTime? @synniKP, 
                    System.DateTime? @surmaKP, 
                    System.DateTime? @synniKPVahemikuLoppKP, 
                    string @dokumendiNR, 
                    string @elukohtCSV, 
                    string @emaNimi, 
                    string @isaNimi, 
                    string @teisedNimed, 
                    System.Int64? @dokumendiTyypKL, 
                    string @dokumendiNimetus, 
                    System.Int64? @kodakondsusKL, 
                    System.Collections.Generic.List<System.Int64?> @mitmikKodakondsusKL, 
                    System.Boolean? @karistatudIsik, 
                    string @ametikohaNimetus, 
                    System.Boolean? @eXCLUDE, 
                    System.Int64? @objektID, 
                    string @kood, 
                    string @koosnimi, 
                    string @eelmisedKoosnimedCSV, 
                    string @nimi, 
                    System.Collections.Generic.List<System.Int64?> @menetlusSubjektiLiikKL, 
                    string @muudeRiikideKoodid, 
                    System.Collections.Generic.List<System.Int64?> @osalineKL, 
                    System.Boolean? @ainultSysteemsed) : 
                base(@eXCLUDE, @objektID, @kood, @koosnimi, @eelmisedKoosnimedCSV, @nimi, @menetlusSubjektiLiikKL, @muudeRiikideKoodid, @osalineKL, @ainultSysteemsed) {
            this.@__suguKL = @suguKL;
            this.@__eesnimi = @eesnimi;
            this.@__synniKP = @synniKP;
            this.@__surmaKP = @surmaKP;
            this.@__synniKPVahemikuLoppKP = @synniKPVahemikuLoppKP;
            this.@__dokumendiNR = @dokumendiNR;
            this.@__elukohtCSV = @elukohtCSV;
            this.@__emaNimi = @emaNimi;
            this.@__isaNimi = @isaNimi;
            this.@__teisedNimed = @teisedNimed;
            this.@__dokumendiTyypKL = @dokumendiTyypKL;
            this.@__dokumendiNimetus = @dokumendiNimetus;
            this.@__kodakondsusKL = @kodakondsusKL;
            this.@__mitmikKodakondsusKL = @mitmikKodakondsusKL;
            this.@__karistatudIsik = @karistatudIsik;
            this.@__ametikohaNimetus = @ametikohaNimetus;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected FyysilineIsikOtsing(IFyysilineIsikOtsing @fyysilineIsikOtsing) : 
                base(@fyysilineIsikOtsing.EXCLUDE, @fyysilineIsikOtsing.ObjektID, @fyysilineIsikOtsing.Kood, @fyysilineIsikOtsing.Koosnimi, @fyysilineIsikOtsing.EelmisedKoosnimedCSV, @fyysilineIsikOtsing.Nimi, @fyysilineIsikOtsing.MenetlusSubjektiLiikKL, @fyysilineIsikOtsing.MuudeRiikideKoodid, @fyysilineIsikOtsing.OsalineKL, @fyysilineIsikOtsing.AinultSysteemsed) {
            this.@__suguKL = @fyysilineIsikOtsing.SuguKL;
            this.@__eesnimi = @fyysilineIsikOtsing.Eesnimi;
            this.@__synniKP = @fyysilineIsikOtsing.SynniKP;
            this.@__surmaKP = @fyysilineIsikOtsing.SurmaKP;
            this.@__synniKPVahemikuLoppKP = @fyysilineIsikOtsing.SynniKPVahemikuLoppKP;
            this.@__dokumendiNR = @fyysilineIsikOtsing.DokumendiNR;
            this.@__elukohtCSV = @fyysilineIsikOtsing.ElukohtCSV;
            this.@__emaNimi = @fyysilineIsikOtsing.EmaNimi;
            this.@__isaNimi = @fyysilineIsikOtsing.IsaNimi;
            this.@__teisedNimed = @fyysilineIsikOtsing.TeisedNimed;
            this.@__dokumendiTyypKL = @fyysilineIsikOtsing.DokumendiTyypKL;
            this.@__dokumendiNimetus = @fyysilineIsikOtsing.DokumendiNimetus;
            this.@__kodakondsusKL = @fyysilineIsikOtsing.KodakondsusKL;
            this.@__mitmikKodakondsusKL = @fyysilineIsikOtsing.MitmikKodakondsusKL;
            this.@__karistatudIsik = @fyysilineIsikOtsing.KaristatudIsik;
            this.@__ametikohaNimetus = @fyysilineIsikOtsing.AmetikohaNimetus;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public FyysilineIsikOtsing(IIsikOtsing @isikOtsing) : 
                base(@isikOtsing) {
        }
        
        public virtual System.Int64? SuguKL {
            get {
                return this.@__suguKL;
            }
            set {
                this.@__suguKL = value;
            }
        }
        
        public virtual string Eesnimi {
            get {
                return this.@__eesnimi;
            }
            set {
                this.@__eesnimi = value;
            }
        }
        
        public virtual System.DateTime? SynniKP {
            get {
                return this.@__synniKP;
            }
            set {
                this.@__synniKP = value;
            }
        }
        
        public virtual System.DateTime? SurmaKP {
            get {
                return this.@__surmaKP;
            }
            set {
                this.@__surmaKP = value;
            }
        }
        
        public virtual System.DateTime? SynniKPVahemikuLoppKP {
            get {
                return this.@__synniKPVahemikuLoppKP;
            }
            set {
                this.@__synniKPVahemikuLoppKP = value;
            }
        }
        
        public virtual string DokumendiNR {
            get {
                return this.@__dokumendiNR;
            }
            set {
                this.@__dokumendiNR = value;
            }
        }
        
        public virtual string ElukohtCSV {
            get {
                return this.@__elukohtCSV;
            }
            set {
                this.@__elukohtCSV = value;
            }
        }
        
        public virtual string EmaNimi {
            get {
                return this.@__emaNimi;
            }
            set {
                this.@__emaNimi = value;
            }
        }
        
        public virtual string IsaNimi {
            get {
                return this.@__isaNimi;
            }
            set {
                this.@__isaNimi = value;
            }
        }
        
        public virtual string TeisedNimed {
            get {
                return this.@__teisedNimed;
            }
            set {
                this.@__teisedNimed = value;
            }
        }
        
        public virtual System.Int64? DokumendiTyypKL {
            get {
                return this.@__dokumendiTyypKL;
            }
            set {
                this.@__dokumendiTyypKL = value;
            }
        }
        
        public virtual string DokumendiNimetus {
            get {
                return this.@__dokumendiNimetus;
            }
            set {
                this.@__dokumendiNimetus = value;
            }
        }
        
        public virtual System.Int64? KodakondsusKL {
            get {
                return this.@__kodakondsusKL;
            }
            set {
                this.@__kodakondsusKL = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> MitmikKodakondsusKL {
            get {
                return this.@__mitmikKodakondsusKL;
            }
            set {
                this.@__mitmikKodakondsusKL = value;
            }
        }
        
        public virtual System.Boolean? KaristatudIsik {
            get {
                return this.@__karistatudIsik;
            }
            set {
                this.@__karistatudIsik = value;
            }
        }
        
        public virtual string AmetikohaNimetus {
            get {
                return this.@__ametikohaNimetus;
            }
            set {
                this.@__ametikohaNimetus = value;
            }
        }
    }
}
